/**
 * ajax刷新部分页面但相关的js没重新加载，利用本文件重新加载那部分js
 */

// 每隔5分钟自动保存
function autoSave() {
    $('[name="published"]').val(false);
    $('[name="autoSubmit"]').val(true);
    $('#blog-form').ajaxSubmit(
        /*function(e) {
        alert("已自动保存！");
    }*/
    );
    return false;
}

$(function () {
    // 5分钟自动保存一次
    setInterval(autoSave, 1000 * 300);
});

$('#upload-btn').click(function () {
    $('#firstPicture-container').load(/*[[@{/admin/blogs/upload/firstPicture}]]*/"/admin/blogs/upload/firstPicture", {
        url: $("[name = 'firstPicture']").val(),
        id: $("[name = 'id']").val()
    }, function () {
        reloadFirstPictureJS('firstPicture-script', "/js/firstPicture.js");
    });
});

$('#local-btn').click(function () {
    $('#file-input').click();
});

function createHttpRequest()
{
    var xmlHttp = null;
    try {
        // Firefox, Opera 8.0+, Safari
        xmlHttp = new XMLHttpRequest();
    } catch (e) {
        // Internet Explorer
        try {
            xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try {
                xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e) {
                alert("您的浏览器不支持AJAX！");
            }
        }
    }
    return xmlHttp;
}

function fileImport() {
    var file = document.getElementById('file-input').files[0];
    var name = file.name;//读取选中文件的文件名
    var reader = new FileReader();//这是核心,读取操作就是由它完成.
    var xmlHttpRequest = createHttpRequest();
    //var uploadProgress = document.getElementById("upload-progress");
    //reader.readAsText(selectedFile);//读取文件的内容,也可以读取文件的URL
    reader.readAsArrayBuffer(file);
    //uploadProgress.style.visibility="visible";
    //uploadProgress.value = 0;
    reader.onload = function (e) {
        //当读取完成后回调这个函数,然后此时文件的内容存储到了result中,直接操作即可
        xmlHttpRequest.open("POST", "/admin/blogs/upload/firstPicture", true);
        xmlHttpRequest.setRequestHeader("Content-type", "application/octet-stream"); //流类型
        xmlHttpRequest.setRequestHeader("localFileName", encodeURI(name)); //兼容中文
        xmlHttpRequest.send(this.result);
    }
    // 进度条 暂时弄不出来也没啥用
    /*reader.onprogress = function (e) {
        uploadProgress.value = e.loaded * 100 / e.total;
    }*/
    // ajax刷新部分页面，传入responseText
    xmlHttpRequest.onreadystatechange = function() {
        if (xmlHttpRequest.readyState === 4) {
            if (xmlHttpRequest.status === 200) {
                document.getElementById('firstPicture-container').innerHTML = xmlHttpRequest.responseText;
                reloadFirstPictureJS('firstPicture-script', "/js/firstPicture.js");
            } else {
                console.log("上传失败！");
            }
        }

    }
}

/*使message组件具有可关闭的功能*/
$(' .message .close').on( /* 需要空格？？？*/
    'click', function () {
        $(this).closest('.message').transition('fade');
    }
);


/*表单验证*/
$('.ui.form').form({
    fields: { //要加s。。。
        title: {
            identifier: 'title',//与name一致
            rules: [{
                type: 'empty',
                prompt: '请输入博客标题', //提示内容
            }]
        },
        content: {
            identifier: 'content',//与name一致
            rules: [{
                type: 'empty',
                prompt: '请输入博客内容', //提示内容
            }]
        },
        typeId: {
            identifier: 'typeId',//与name一致
            rules: [{
                type: 'empty',
                prompt: '请输入博客分类', //提示内容
            }]
        },
        // ajax重新刷新部分页面后，好像会丢失与script的联系，在新增博客时博客首图为空就被替换掉，通过不了表单验证
        firstPicture: {
            identifier: 'firstPicture',//与name一致
            rules: [{
                type: 'empty',
                prompt: '请上传首图', //提示内容
            }]
        },
        description: {
            identifier: 'description',//与name一致
            rules: [{
                type: 'empty',
                prompt: '请输入博客简介', //提示内容
            }]
        },
    }
});